User-interactive displays including theme-based dynamic video mosaic elements

ABSTRACT

The present invention teaches a method of creating and presenting a user interface comprising a Dynamic Mosaic Extended Electronic Programming Guide (DMXEPG) using video, audio, special applications, and service dynamic metadata. The system enables television or digital radio service subscribers to select and display of various programs including video, interactive TV applications, or any combination of audio or visual components grouped and presented in accordance with the dynamic program/show metadata, business rules and objectives of service providers, broadcasters, and/or personal subscriber choices, collectively referred to as mosaic element presentation criteria.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a Continuation of U.S. patent application Ser. No. 13/094,957, filed on Apr. 27, 2011, which is a Continuation of U.S. patent application Ser. No. 11/505,063, filed on Aug. 16, 2006, which is a Continuation of U.S. patent application Ser. No. 11/342,142, filed on Jan. 27, 2006, which claims the benefit of U.S. Provisional Application No. 60/647,287, filed Jan. 27, 2005 and U.S. Provisional Application No. 60/678,773, filed May 9, 2005, which are included by reference in their entirety for all purposes.

BACKGROUND OF THE INVENTION

Television service providers including cable, satellite, terrestrial, video over internet, IPTV, and others can deliver a large number of channels to subscribers. To choose and select desired program among hundreds of available channels, subscribers can browse channels one by one or use grid or mosaic based Electronic Programming Guides (EPG) by which they might search for possible choices, with the effect to that those subscribers are able to select one or more choices for presentation. However, while they achieve the general goal of allowing users to search and select, known systems are subject to several draw-backs.

Browsing a large number of channels in a search of a desired show is time consuming and inefficient. For example, to preview currently broadcasted shows subscriber can surf 300 channels one by one while spending 10 seconds on each, requires over 50 minutes, which is, in many cases, longer than subscriber choose to watch television program, or the duration of desired program itself. Grid based EPG, although listing titles of programs for several channels at once, including the option of selecting favorite channels and expediting program selection process, displays on average 2 shows per grid's channel line, for the total of 600 shows subscriber has to view to select desired show. Moreover, grid based EPG does not allow users to observe the actual video content of several channels at once, thus forcing subscribers to decide on channel and program selection merely from its textual description, and not its actual content. Although some EPGs allow subscribers to preview in PIP a program selected from the grid, still users can not simultaneously observe content of more than one program. Grid based EPGs that allow subscribers to search programs by title or content category, displayed search results still in a textual representation of a matched program; at the same time not including in the search programs available over VOD, local or network PVR, or program available thru other service provider or source.

Existing mosaic based EPG (MEPG), used by CANAL+ in France for example, is also limiting since it creates pages made of mosaic element each of which is assigned for an extended period of time to a specific channel CANAL+ offers 3 screens each with 20 elements for the total of 60 channels. However, for such static MEPG, 300 channels may be presented on 15 separate screens forcing a subscriber wishing to find all “News” programs to preview video content of 300 channels by surfing 15 separate screens each with 20 elements. When a subscriber wishes to compare content of two or more channels not present on the same screen, he or she has to toggle between two or more EPG screens, rendering such system as cumbersome, inconvenient, and difficult to use. Such static MEPG systems do not allow subscribers to customize EPG screens to simultaneously display video content of their favorite channels on the same screen. Also, existing MEPG systems, when attempting to group channels by category (e.g. movies, news, cartoons) fail because the same channel broadcasts shows that can belong to different content categories at different times of the day: “Cartoons” in the morning, “Soap Operas” in the afternoon, “News” in the evening, and “Movies” at night. As the result, with the existing MEPG system, when the channels are grouped by category and displayed on the same screen, subscriber that tunes to “cartoons” mosaic EPG page, expecting to see cartoons, actually sees programs that belong to other content categories.

In U.S. Patent Application No. 2004/0070593, discloses a mosaic-like UI that can be dynamically rearranged in response, in part, to user selection and static metadata about the video titles stored in the library. However, this solution does not work for the television broadcasting environment where each channel's metadata is not static, but dynamic, since it is being contentiously updated and changed. The '593 application does not take into account business needs of service provider which might want to auction off locations of some or all of the mosaic elements on some or all MEPG screens to broadcasters or other third parties. The '593 application does not allow subscribers to simultaneously view video feed from one of any broadcasting channels on one part of the screen while simultaneously accessing MEPG in the remaining portion of the same screen.

In addition to the difficulties of selecting among a large number of currently broadcasting programs, as described above, subscribers also have many challenges selecting upcoming shows using existing EPGs. Again, to find a show that matches their criteria, subscribers have to review set of hundreds of shows that immediately following currently broadcasting programs plus review another set of hundreds of shows that follow after. This task becomes very arduous because by default programs in the existing grid and mosaic based EPGs are organized by channel and time, but not by program category.

So, to choose desired program subscribers have to review many hundreds of entries most of which do not belong to desired program category. The problem of program selection will be exacerbated in the future when even more channels and programs become accessible to subscribers thanks to proliferation of client PVR, VOD over cable, VOD over Internet, network PVR, and other program delivery methods and service. Not only subscribers would have to review hundreds of available programs many of which are irrelevant to the search since they belong to other program categories, subscribers have to juggle among several EPGs each of which is representing its own service. For example, digital cable service and VOD over cable are represented by their own EPGs, TiVO or ReplayTV PVR services are represented by their own EPGs, and VOD over Internet, like Akimbo, is also represented by its own EPG. With more and more content delivery options, subscribers are forced to spend greater amount of time searching and selecting desired content distributed among various systems represented by own EPGs.

What's more, existing EPG services use textural representation of programs and services, like interactive TV. However, it's been shown that people gravitate towards search of video information not by its textual representation but by its visual representation. The best example of this are display cases of a video store, like Blockbuster. There, latest movie releases are arranged in such a manner as to allow customers to view and select desire program by viewing front covers of the DVD cases. Most DVDs, on their front covers, show a visual representation of the video content that allows them to quickly and easily infer its genre, participating actors, and thus make a selection. Unfortunately, existing EPG services have not been designed to display program's visual representation and allow subscribers to choose desired program by it. Instead, subscribers have to choose desired program by its textual representation.

To simplify content selection process, subscribers ought to have a Content Portal that can allow them to choose desired program based on its visual representation and can consolidate access to programs available over multiple services, including those based on a locally or remotely stored content, and services based on programs broadcasted over various available media. Thus, Content Portal ought to allow subscribers to access currently broadcasted programs, soon to be broadcasted programs, locally stored and remotely stored programs by their visual representation. While consolidating access and selection of programs available over multiple networks, Content Portal should also preserve access to advanced value added services like interactive television and on demand advertisement.

In addition to EPGs, subscribers can choose desired program using other program sources including printed TV guides, and TV guides offered over the Internet. There, subscribers have to deal with the same problems of choosing desired content based on its textual representation, but not on its visual representation.

Similarly to the digital TV service providers, providers of digital and satellite radio services like XM and Cirrus have not incorporated visual representation of broadcasted or soon to be broadcasted content, although amount of available content over hundreds of available channels is large. Similarly to the digital TV service, subscribers to the digital radio service have to choose desired program based on its textual representation. With hundreds of simultaneously available programs, this task becomes as challenging as selecting video content from digital TV service providers.

BRIEF SUMMARY OF THE INVENTION

The invention provides a method and system capable of solving many problems

of content preview and selection for visual or audio content offered over digital TV or digital radio networks, and generally a user interface (UI) for accessing content. One aspect of the invention is a method of creating and presenting a Dynamic Mosaic Extended Electronic Programming Guide (DMXEPG) using video, audio, special applications, and service dynamic metadata. The system enables television or digital radio service subscribers to select and display of various programs including video, interactive TV applications, or any combination of audio or visual components grouped and presented in accordance with the dynamic program/show metadata, business rules and objectives of service providers, broadcasters, and/or personal subscriber choices. Another aspect of the invention is to print programming guides or guides in electronic form using the same solution of utilizing dynamic metadata to group, consolidate, and display program information with the purpose of allowing

subscribers to view and select desired program using program's visual representation.

In accordance with an aspect of the present invention, the system can merge channel programs/shows metadata for multiple services offered by one or more than one service provider using a unique channel identifier, e.g., a service source ID either for digital TV or radio services. Such merger is performed on the backend and merged metadata is displayed on a client device or in a printed program information guide. This invention differs from the mechanism described in U.S. Pat. No. 6,072,983, which describes merging channel metadata on the client side.

In accordance with an aspect of the present invention, an application can be provided on devices with more than one tuner that can simultaneously display video and applications graphics of that application on more than one display.

In accordance with an aspect of the present invention, applications can be provided on devices with more than one tuner that can simultaneously display a program chosen by the subscriber on one portion of the screen, while displaying DMXEPG or its components on the rest of the screen.

In accordance with an aspect of the present invention, metadata from different value-added services can be integrated into a matrix element (ME) of the DMXEPG and displayed to subscribers for currently broadcasted or soon to be broadcasted programs.

In accordance with an aspect of the present invention, integrated metadata can be recorded for later playback.

Further aspects of the present invention include:

(a) it can dynamically assign channels to Mosaic Element (ME) using: continuously updated metadata (programming schedule) about television (broadcasted) channel (EPG programming/listings), criteria received from one or more sources. For example a subscriber, service provider, or third party. Example of third party can be broadcaster, content critic, and the like.

(b) it can dynamically assign iTV applications, Interactive advertisement, VOD program links to Mosaic Element (ME) using criteria received from one or more sources. For example a subscriber, service provider, or third party. Example of third party can be broadcaster, content critic, and the like.

(c) it allows to support DMXEPG where subscribers can simultaneously observe any pre-selected channel chosen by them or video content from other sources, like DVD players or programs offered by another digital TV service provider, on one portion of the screen while observing other ME with or without program related textual information on the rest of the screen

(d) it allows service providers to collect payments from broadcasters,

content owners, or third parties for assigning without service subscriber input their programs to pre-selected ME and DMXEPG screens

(e) it allows service providers to collect payments from advertisers for

assigning, without service subscriber input, logos, videos, or other visual or audio materials to ME or DMXEPG screens

(f) it allows service providers to create more than one variant of DMXEPG pages, and without subscriber input associate the specific DMXEPG variant to subsets of subscribers. These subscriber subsets can be defined by one or more criteria. For example, subscriber demographic data, capabilities of subscriber device, or capabilities of service provider head-end equipment, etc.

(g) it simplifies for subscribers channel, program, and iTV application selection, usage of interactive TV applications and DMXEPG by using available buttons on the remote control in conjunction with the optional rotating element integrated into the remote control

(h) it allows subscribers to customize DMXEPG page which can be set to display in some or all MEs either channels, programs or interactive applications chosen by the subscriber

(i) it allows subscribers to choose currently broadcasted or upcoming show which are organized according to their type, business rules or service provider, or client equipment capabilities (j) it allows subscribers to choose desired program among currently broadcasted or soon to be broadcasted audio or video programs based on their visual representation

(k) it allows subscribers using services of multiple digital TV or digital radio service providers, to choose desired program from a single programming guide and also use the same programming guide to choose desired program stored either locally or remotely

(l) it allows subscribers using programming guide to access value added

services, like VOD, which are integrated into related ME of DMXEPG. For example, ME displaying currently broadcasting or soon to be broadcasted show can have embedded sign indicating to subscribers availability of previously broadcasted episodes of the same show over VOD service

(m) it allows to created application on devices with more than one tuner that can simultaneously display video and applications graphics of that application on more than one display, for example allowing subscribers to view and navigate DMXEPG on one display, which can be a touch screen display, and view selected show on another display

(n) it allows subscribers with devices with multiple tuners to simultaneously view DMXEPG on one portion of the screen while viewing desired program delivered from local or remote source on the other portion of the screen.

(o) it allows subscribers to record desired program along with metadata of related services like TV commerce, interactive advertisement, VOD, interactive TV applications, and others

(p) it allows to virtually increase size of displayed video in the ME to improve content recognition by the subscriber by zooming in and truncating source video

(q) it allows subscribers to search channels by channel name

(r) it allows subscribers to create one or more customized DMXEPG channel line up by reassigning channel numbers to numbers selected by the subscriber. For example, subscriber can group desired channels by assigning numbers to the channels that would allow channels to be located closely to each other during channel surfing. This system can be implemented by processing original channel line up on the client side or on the headend side

(s) it allows to create content representation system using ME which is a visual and or audio representation, in addition to the textual description, of accessible content (information) or representation of content category and type.

(t) it allows subscriber to browse, view, and select desired program from all subscriber accessible content information using DMXEPG which comprises ME

(u) it allows to pre-search and display to subscribers related information including showing times, channel number, or location (VOD, PVR) of past or upcoming episodes of the show in the selected ME. For example, subscriber reviewing a show in specific ME, can ascertain show times of upcoming or past episodes as well as VOD ordering or PVR start play options

(v) it allows to indicate to subscribers availability of video trailer or show video preview or related value added service stored on PVR, network PVR, or VOD server on ME representing currently broadcasted or soon to be broadcasted shows

(w) it allows subscribers to enable content filtering service managed by service provider or third party in addition to or instead of TV Parental Guidance (TVPG) or Motion Picture (MPAA) ratings. For example, based on user preference, DMXEPG service (back-end service suite, client software, or their combination) can deny access to one or more channel, program, or portion of a program in accordance with the criteria managed by either service provider and/or third party.

BRIEF DESCRIPTION OF THE DRAWINGS

Various aspects of the present invention are described in the following detailed discussion of an illustrative embodiment of the invention. The embodiment is explained in the figures listed below and in the following detailed discussion.

FIG. 1 is the screen for the first level of multi-dimensional DMXEPG which, according to the invention, is dynamically generated by assigning to ME programs that match program content, business, and subscriber preference rules.

FIG. 2 is one of the layouts for the second or other levels of DMXEPG which, according to the invention, is dynamically generated by the DMXEPG service, assigning to the MEs the programs that match program content, business, and subscriber preference rules.

FIG. 3 is the multi-level DMXEPG for the systems with a multi-tuner set-top box (STB) or VOD system.

FIG. 4 is an example of tri-level DMXEPG access path to the channel.

FIG. 5 is an anatomy of the ME components used in DMXEPG.

FIG. 6 is an example of a DMXEPG page dynamically created in the morning hours.

FIG. 7 is an example of a DMXEPG page dynamically created in the evening hours.

FIG. 8 is an example of a DMXEPG page generated by an STB with two or more tuners.

FIG. 9 is an example of a DMXEPG page generated by the service provider.

FIG. 10 is an example of a DMXEPG page with video channel(s) assigned to ME(s) by the subscriber and facilitated by multi-tuner STB or VOD system.

FIG. 11 is a DMXEPG page generated when 16 or more programs for selected content category are available at a given time and where the subscriber has the ability to display video that is selected from an ME within another ME.

FIG. 12 is a DMXEPG page generated when 9 programs for selected content category are available at a given time.

FIG. 13 is a DMXEPG page generated when 5 programs for selected content category are available at a given time.

FIG. 14 is an example of a DMXEPG page simultaneously displaying an interactive application on one or more MEs while displaying assigned video programs on another ME, where each ME can have more than one assigned iTV application assigned.

FIG. 15 is a DMXEPG page generated when customer does not have rights to access programs with parental rating exceeding maximum allowed limit.

FIG. 16 is a DMXEPG page generated when the customer does not have rights to access channels assigned to one or more ME.

FIG. 17 is a DMXEPG generated by the service provider with one or more MEs displaying a channel for which subscriber is not authorized.

FIG. 18 is an assignment schedule for existing static DMXEPG.

FIG. 19 is an assignment schedule for DMXEPG that dynamically assigns channels to MEs.

FIG. 20 is an assignment schedule for DMXEPG that dynamically assigns programs from different channels to MEs.

FIG. 21 is a DMXEPG page with rotating interactive content assigned to an ME.

FIG. 22 is a DMXEPG page with rotating interactive applications assigned to an ME.

FIG. 23 is head-end data flow through the Matrix TV Server Suite (MTVSS).

FIG. 24 shows logical components of the MTVSS.

FIG. 25 is an algorithm for avoiding TV screen burnout.

FIG. 26 shows ways to activate the DMXEPG Client application.

FIG. 27 shows ways to activate the DMXEPG Client resident application.

FIG. 28 shows relations between standard MPEG2 transport tables and additional private Interactive Mosaic Tables/descriptors.

FIG. 29 shows local and national MTVSS configurations.

FIG. 29A shows MTVSS configurations for DMXEPG screen generation on a client device.

FIG. 30 is a remote control which, in accordance with the invention, incorporates a rotating element used by subscribers to navigate DMXEPG or iTV applications.

FIG. 31 is a diagram illustrating how to “virtually” increase size of the video or visual program in the ME for various aspect ratios.

FIG. 32 is a diagram illustrating clipping for an original video source having a 4×3 aspect ratio that is targeted for an ME that has a 16×9 aspect ratio.

FIG. 33 is a diagram illustrating clipping for a 4×3 original video source (i.e., its aspect ratio is 4×3) to fit into a target ME having a non-standard aspect ratio.

FIG. 34 is a diagram illustrating clipping for a 16×9 original video source to fit a 16×9 ME.

FIG. 35 is a diagram illustrating clipping for a 16×9 original video source to fit a 4×3 ME.

FIG. 36 is a diagram illustrating clipping for a 16×9 to fit a non-standard ME.

FIG. 37 is a diagram illustrating “zooming” in on an ME that is in focus.

FIG. 38 is a diagram illustrating zooming in of a 4×3 original ME to an expanded ME having a 16×9 aspect ratio.

FIG. 39 is a diagram illustrating zooming in of a 16×9 original ME to a 16×9 enlarged ME.

FIG. 40 is a diagram illustrating zooming in of a 16×9 original ME to a 4×3 enlarged ME.

FIG. 41 is a diagram illustrating zooming in of a 16×9 original ME to a non-standard zoomed-in ME (i.e., the ME has a non-standard aspect ratio).

FIG. 42 is a diagram illustrating zooming in of a 4×3 original ME to a non-standard zoomed-in ME (i.e., the ME has a non-standard aspect ratio).

FIG. 43 is a diagram illustrating the in-focus ME having a non-standard aspect ratio, where zooming results in a 4×3 expanded ME.

FIG. 44 is a diagram illustrating the in-focus ME in FIG. 33, where zooming results in a 16×9 expanded ME.

FIG. 45 is a diagram illustrating expanding the size of a zoomed-in ME to a full-screen video.

FIG. 46 is a diagram illustrating reversing of a series of zoom-ins by “zooming” out of an ME.

FIG. 47 is a diagram illustrating reducing of a full-screen display to its previous state.

FIG. 48 is a general flow chart showing the subscriber steps zooming in and zooming out of an in-focus ME.

FIG. 49 is a general flow chart showing an alternative process for zooming in and zooming out of an in-focus ME.

FIG. 50 shows changing the location of an expanded ME on the screen.

FIG. 51 shows that DMEPX can comprise MEs generated at the headend or on the subscriber (client) side.

FIG. 52 shows major system elements which allow connection of additional content from any source that is available to subscriber.

FIG. 52a shows major system elements which allow DMXEPG screen to be created by subscriber device.

FIG. 53 shows major system elements which allow connection of additional content from more than one additional content source that is available to subscriber.

FIG. 54 shows major system elements and their connections to enable subscribers to display expanded ME in the DMXEPG using the same content source.

FIG. 55 is a table illustrating system elements and their connections to enable subscribers to display expanded ME in the DMXEPG using more than one content source.

FIG. 56 is a table illustrating combinations of scaling and display of video when the aspect ratio of a DMXEPG is 4×3.

FIG. 57 is a table illustrating combinations of scaling and display of video when the aspect ratio of a DMXEPG is 16×9.

FIG. 58 is a table illustrating combinations of scaling and display of video when the aspect ratio of a DMXEPG is M×N.

FIG. 59 shows a process of scaling source video to an ME when source and destination aspect ratios are the same or are not the same.

FIG. 60 is a diagram illustrating different arrangements of MEs in a DMXEPG for different combinations of DMXEPG and ME aspect ratios.

FIG. 61 illustrates examples of different numbers of MEs, having 16×9 aspect ratios, used to populate a DMXEPG application screen.

FIG. 62 illustrates examples of MEs, having different aspect ratios, used to populate a DMXEPG application screen.

FIG. 63 illustrates examples of different numbers of MEs, having M×N aspect ratios, used to populate a DMXEPG application screen.

FIG. 64 illustrates an example Pay Per View portal created with MEs.

FIG. 65 illustrates the Pay Per View portal, in which ME3 is in focus and the titles for ME1 to ME4 are shown.

FIG. 66 illustrates the Pay Per View portal, in which ME7 is in focus and the titles for ME5 to ME8 are shown.

FIG. 67 illustrates the Pay Per View portal, in which ME15 and the title linked to ME15 are in focus.

FIG. 68 illustrates the Pay Per View portal, in which ME23 and the title linked to ME23 are in focus.

FIG. 69 illustrates the Pay Per View portal, in which an in-focus ME can be selected for purchase.

FIG. 70 is an illustration of an example UI and navigation in a DMXEPG for the specific content categories of GAMES and KIDS.

FIG. 71 is an illustration of a display in which ME5 is in focus and the main screen is updated with the video currently associated with ME5.

FIG. 72 is an illustration of the display of additional information for the in-focus ME5.

FIG. 73 is an illustration of the display in which ME2 is in focus.

FIG. 74 is an illustration of a first part of a sequence showing the focus changed to the GAMES ME.

FIG. 75 illustrates the second part of a sequence in which the main screen is replaced with a set of MEs for different games that can be accessed.

FIG. 76 illustrates user navigation from the GAMES ME to a non-game ME.

FIG. 77 illustrates the main screen replaced with the scaled video when the SELECT button is pressed for the in-focus ME.

FIG. 78 illustrates an example of a UI and navigation of a DMXEPG created for a specific content category (Kids).

FIG. 79 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 80 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 81 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 82 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 83 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 84 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 85 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 86 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 87 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 88 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 89 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 90 shows another example of the UI and navigation of the DMXEPG created for the specific content category (Kids).

FIG. 91A shows a first part of a sequence of a UI and navigation of a DMXEPG portal for a specific content category (Kids).

FIG. shows a second part of the sequence of the DMXEPG UI navigation within the specific content category (Kids).

FIG. 91C shows a third part of the sequence of the DMXEPG UI navigation within the specific content category (Kids).

FIG. 91D shows a fourth part of the sequence of the DMXEPG UI navigation within the specific content category (Kids).

FIG. 92A shows a first part of a sequence of DMXEPG UI navigation and program information following changes in focus of MEs.

FIG. 92B shows a second part of the sequence of DMXEPG UI navigation and program information following changes in focus of MEs.

FIG. 92C shows a third part of the sequence of DMXEPG UI navigation and program information following changes in focus of MEs.

FIG. 92D shows a fourth part of the sequence of DMXEPG UI navigation and program information following changes in focus of MEs.

FIG. 93A shows a first part of a sequence of a UI and navigation of a DMXEPG of future (not yet broadcast) programs.

FIG. 93B shows a second part of the sequence of a UI and navigation of a DMXEPG of future (not yet broadcast) programs.

FIG. 93C shows a third part of the sequence of a UI and navigation of a DMXEPG of future (not yet broadcast) programs.

FIG. 93D shows a fourth part of the sequence of a UI and navigation of a DMXEPG of future (not yet broadcast) programs.

FIG. 94A shows a first part of a sequence of an option for enlarging a selected ME to a larger portion of the screen and the full screen.

FIG. 94B shows a second part of the sequence of an option for enlarging a selected ME to a larger portion of the screen and the full screen.

FIG. 94C shows a third part of the sequence of an option for enlarging a selected ME to a larger portion of the screen and the full screen.

FIG. 94D shows a fourth part of the sequence of an option for enlarging a selected ME to a larger portion of the screen and the full screen.

FIG. 95A shows a first part of a sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 95B shows a second part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 95C shows a third part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 95D shows a fourth part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 96A shows a fifth part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 96B shows a sixth part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 96C shows a seventh part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 96D shows an eighth part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 97A shows a first part of a sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 97B shows a second part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 97C shows a third part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 97D shows a fourth part of the sequence of a UI and navigation of a DMXEPG in program information display mode.

FIG. 98A shows a first part of a sequence of a UI and navigation of a DMXEPG in a channel browsing mode.

FIG. 98B shows a next part of the sequence in the channel browsing mode in response to the Channel Browser ME being selected.

FIG. 98C shows a next part of the sequence in the channel browsing mode in response to Arrow Right being selected.

FIG. 98D shows a next part of the sequence in the channel browsing mode in response to the Arrow Down being selected.

FIG. 99A shows the part of the sequence shown in FIG. 98D.

FIG. 99B shows a next part of the sequence in the channel browsing mode in response to Info being selected.

FIG. 99C shows a next part of the sequence in the channel browsing mode in response to Arrow Right being selected.

FIG. 99D shows a next part of the sequence in the channel browsing mode in response to Arrow Up being selected.

FIG. 100A shows the part of the sequence shown in FIG. 99B.

FIG. 100B shows a next part of the sequence in the channel browsing mode in response to Info being selected.

FIG. 100C shows a next part of the sequence in the channel browsing mode in response to Play being selected.

FIG. 100D shows a next part of the sequence in the channel browsing mode in response to Arrow Up being selected.

FIG. 101A shows the part of the sequence shown in FIG. 100C.

FIG. 101B shows the part of the sequence shown in FIG. 100D as a first optional display in response to selecting Arrow Up.

FIG. 101C shows a second optional display in response to selecting Arrow Up.

FIG. 102A shows the part of the sequence shown in FIG. 99B.

FIG. 102B shows a next part of the sequence as a first optional display in response to selecting Arrow Up.

FIG. 102C shows a next part of the sequence as a second optional display in response to selecting Arrow Up.

FIG. 103A shows a first part of a sequence in channel browsing mode.

FIG. 103B shows a next part of the sequence in response to selecting Arrow Right.

FIG. 103C shows a second part of a sequence beginning from the display shown in FIG. 103D in response to selecting Arrow Right.

FIG. 103D shows the first part of the sequence prior to selecting Arrow Right and displaying the second part of the sequence shown in FIG. 103C.

FIG. 104A shows a first part of a sequence in channel browsing mode.

FIG. 104B shows a next part of the sequence in response to selecting Play.

FIG. 104C shows a second part of a sequence beginning from the display shown in FIG. 104D in response to selecting Play.

FIG. 104D shows the first part of the sequence prior to selecting Play and displaying the second part of the sequence shown in FIG. 104C.

FIG. 105A shows a first part of a sequence in channel browsing mode.

FIG. 105B shows a next part of the sequence in response to selecting the Channel 16 Video ME shown in FIG. 105A.

FIG. 105C shows a second part of a sequence beginning from the display shown in FIG. 105D in response to selecting the Channel 16 Video ME shown in FIG. 105D.

FIG. 105D shows the first part of the sequence prior to selecting the Channel 16 Video ME and displaying the second part of the sequence shown in FIG. 105C.

FIG. 106A shows a first part of a sequence in channel browsing mode.

FIG. 106B shows a next part of the sequence in response to selecting a scaled Channel 16 Video ME shown in FIG. 106A.

FIG. 106C shows a second part of a sequence beginning from the display shown in FIG. 106D and in response to selecting the scaled Channel 16 Video ME shown in FIG. 106D.

FIG. 106D shows the first part of the sequence prior to selecting the scaled Channel 16 Video ME and displaying the second part of the sequence shown in FIG. 106C.

FIG. 107A shows the display in FIG. 106C.

FIG. 107B shows a next part of the sequence as a first optional display in response to making a selection while viewing the Full Screen Video shown in FIG. 107A.

FIG. 107C shows a next part of the sequence as a second optional display in response to making a selection while viewing the Full Screen Video shown in FIG. 107A.

FIG. 108A shows a first part of a sequence in channel browsing mode.

FIG. 108B shows a next part of the sequence in response to selecting Channel 16 Video ME shown in FIG. 108A.

FIG. 108C shows a second part of a sequence beginning from the display shown in FIG. 108D and in response to selecting the Channel 16 Video ME shown in FIG. 108D.

FIG. 108D shows the first part of the sequence prior to selecting the Channel 16 Video ME and displaying the second part of the sequence shown in FIG. 108C.

FIG. 109A shows a first part of a sequence in channel browsing mode.

FIG. 109B shows a next part of the sequence in response to selecting a scaled Channel 16 Video ME shown in FIG. 109A.

FIG. 109C shows a second part of a sequence beginning from the display shown in FIG. 109D and in response to selecting a scaled Channel 16 Video ME shown in FIG. 109D.

FIG. 109D shows the first part of the sequence prior to selecting the scaled Channel 16 Video ME and displaying the second part of the sequence shown in FIG. 109C.

FIG. 110A shows a first part of an ME zoom in and zoom out sequence in a show browsing mode.

FIG. 110B shows a next part of the sequence in the show browsing mode in response to selecting the Program 7 Video ME shown in FIG. 110A.

FIG. 110C shows a second part of a sequence beginning from the display shown in FIG. 110D and in response to selecting the Program 7 Video ME shown in FIG. 110D.

FIG. 110D shows the first part of the sequence prior to selecting the Program 7 Video ME shown in FIG. 110D and displaying the second part of the sequence shown in FIG. 110C.

FIG. 111A shows a first part of a sequence in a show browsing mode.

FIG. 111B shows a next part of the sequence in which a Full Screen Video is displayed in response to selecting the Program 7 Video ME shown in FIG. 111A.

FIG. 111C shows a second part of a sequence beginning from the display shown in FIG. 111D and in response to selecting the Program 7 Video ME shown in FIG. 111D.

FIG. 111D shows the first part of the sequence prior to selecting the Program 7 Video ME and displaying the second part of the sequence shown in FIG. 111C.

FIG. 112A shows the display in FIG. 111C.

FIG. 112B shows a next part of the sequence as a first optional display in response to making a selection while viewing the Full Screen Video shown in FIG. 112A.

FIG. 112C shows a next part of the sequence as a second optional display in response to making a selection while viewing the Full Screen Video shown in FIG. 112A.

FIG. 113A shows a first part of a sequence of a UI and navigation of DMXEPG in channel browsing mode.

FIG. 113B shows a next part of the sequence in channel browsing mode in response to selecting Arrow Down.

FIG. 113C shows a second part of a sequence beginning from the display shown in FIG. 113D and in response to selecting Arrow Down.

FIG. 113D shows the first part of the sequence prior to selecting Arrow Down and displaying the second part of the sequence shown in FIG. 113C.

FIG. 114A shows a first part of a sequence of a UI and navigation of DMXEPG in channel browsing mode.

FIG. 114B shows a next part of the sequence in the channel browsing mode in response to a selection while viewing the display shown in FIG. 114A.

FIG. 114C shows a next part of the sequence in the channel browsing mode in response to selecting Arrow Down.

FIG. 114D shows the next part of the sequence in the channel browsing mode in response to selecting INFO.

FIG. 115A shows a first part of a sequence of a UI and navigation of DMXEPG in channel browsing mode.

FIG. 115B shows a next part of the sequence in the channel browsing mode in response to selecting INFO.

FIG. 115C shows a next part of the sequence in the channel browsing mode in response to a selection while viewing the display shown in FIG. 115B.

FIG. 116A shows a first part of a sequence of a UI and navigation of DMXEPG in channel browsing mode.

FIG. 116B shows a next part of the sequence in the channel browsing mode in response to a selection while viewing the display shown in FIG. 116A.

FIG. 117A shows a first part of a sequence of a UI and navigation of DMXEPG in channel browsing mode.

FIG. 117B shows a next part of the sequence in the channel browsing mode in response to a selection while viewing the display shown in FIG. 117A.

FIG. 118A shows a first part of a sequence of a DMXEPG prior to entering a PVR content browsing mode.

FIG. 118B shows a second part of the sequence of entering the content browsing mode in response to selecting the PVR Browser ME shown in FIG. 118A.

FIG. 119A shows a first part of a sequence of building a VOD portal.

FIG. 119B shows a next part of the sequence building a VOD portal in response to a selection while viewing the display shown in FIG. 119A.

FIG. 120A show an example of displaying content via a grid based EPG.

FIG. 120B shows an example of displaying content in a grid based EPG.

FIG. 120C shows an example of displaying content on a DMXEPG using an ME.

FIG. 120D shows another example of displaying content on a DMXEPG using an ME.

FIG. 121A shows another example of displaying content on a DMXEPG using an ME.

FIG. 121B shows another example of displaying content on a DMXEPG using an ME.

FIG. 122 shows a diagram describing process of encapsulation of VOD program metadata into DMXEPG metadata.

FIG. 123 shows a system that merges metadata for programs supplied by multiple digital TV service providers.

FIG. 124 shows a system that allows subscribers to select channel auto merge or perform manual channel merge for channels delivered over multiple networks.

FIG. 125 shows an example display of channels in a user defined channel map list and a display of channels in a default channel map list illustrating manual merging of channels delivered over multiple networks.

FIG. 126 shows a new channel, from the default channel list, added to the user defined channel map list.

FIG. 127 shows how a subscriber can tune to the desired channel using channel name (for example CNN, HBO, etc) or its nmemonic representation using telephone keypad-letter association.

FIG. 128 shows a set top box with the application that can utilize more than one display for video output, graphics output, or their combination.

FIG. 129 shows a digital TV set with the application that can utilize more than one display for video output, graphics output, or their combination.

FIG. 130 shows a set top box that runs two applications each of which is using separate display for video output, graphics output, or their combination.

FIG. 131 shows a digital TV set that runs two applications each of which is using separate display for video output, graphics output, or their combination.

FIG. 132 shows a set top box that runs two applications each of which is using a portion of multiple displays for video output, graphics output, or their combination.

FIG. 133 shows a digital TV set that runs two applications each of which is using a portion of multiple displays for video output, graphics output, or their combination.

FIG. 134 shows an example of a multi-screen application for a set top box where the Mosaic portion is directed by a DMXEPG application to the Video/Data Output 1 (Secondary Display) and the Full screen Video stream is directed by a DMXEPG application to the Video/Data Output 2 (Primary Display).

FIG. 135 shows an example of a multi-screen application for a digital TV set where the Mosaic portion is directed by a DMXEPG application to the Video/Data Output 1 (Secondary Display) and the Full screen Video stream is directed by a DMXEPG application to the Video/Data Output 2 (Primary Display).

FIG. 136 shows an example of a multi-screen application for set top box where the EPG is directed to the Video/Data Output 1 (Secondary Display) and the Full screen Video stream is directed by application to the Video/Data Output 2 (Primary Display).

FIG. 137 shows example of multi screen application for set top box where the EPG is directed to the Video/Data Output 1 (Secondary Display) and the Full screen video clip for future program is directed by application to the Video/Data Output 2 (Primary Display).

FIG. 138 shows logical structures of a DMXEPG for multiple displays.

FIG. 139 shows another example of logical structures of a DMXEPG for multiple displays.

FIG. 140 is a diagram illustrating an example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 141 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 142 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 143 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 144 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 145 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 146 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 147 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 148 is a diagram illustrating another example system for a multi-display DMXEPG application implemented with a touch sensitive display.

FIG. 149 shows a remote control that allows subscribers to change focus from one display to another for multi-display applications.

FIG. 150 shows a system diagram of a digital TV set or set top box which enable applications with multi-display functionality.

FIG. 151 shows a system diagram for a touch screen display that can be used with systems that support multi-display DMXEPG.

FIG. 152 shows system diagram of a digital TV set or set top box utilizing touch screen display for multi-display DMXEPG or other multi-screen applications.

FIG. 153 shows DMXEPG screen displayed in three dimensions.

FIG. 154 shows DMXEPG screen displayed in three dimensions.

DETAILED DESCRIPTION OF THE INVENTION

Following is a lexicography of terminology used in this specification:

“Select” button—STB remote control button shown on some remote controls as “Select”, or “OK”, or “Enter”, or under other equivalent name

DMXEPG—Dynamic Mosaic Extended Electronic Programming Guide

Focus—highlighted or otherwise emphasized screen element

iTV—interactive television. Any content that involves subscriber input and provides response to that input

ME—Mosaic Element

MEC—Mosaic Element Component

pressing a button—the specification discloses a conventional button-based remote control device. However, any suitable control device is contemplated, and it need not necessarily contain buttons which are pressed. It is understood that all references herein to pressing a button refers to activating an action, whether by actual button press or some other action; e.g., a voice command.

Program—any show or event transmitted over a channel

Service Provider—entity that offers video services over cable, satellite, terrestrial digital, video over internet, IPTV, fiber, or other types of infrastructure.

STB—set top box. When applicable, STB may be used as a substitute for the terms Subscriber Device or Client Device. The STB is a device which allows service subscriber to receive and decode digital stream.

VOD—video-on-demand. Service that allows a subscriber to start chosen video program stored by the service provider. Term VOD is also used to substitute term COD (content-on-demand). COD may or may not include video in addition to a combination of audio, interactive, graphical, or any other type of transmittable content.

MTVSS—Matrix TV Server Suite

Tuner-system module that allows to filter desired program stream. For example, program stream can be transmitted over RF network; it can also be transmitted over digital packet delivery network, like Internet.

Following is a list of the reference numerals used in FIGS. 1-127 of the specification:

Number Description  1 Full screen video  2 Clipped video source  3 Video processor  4 Mosaic element processed for insertion into DMXEPG  5 Mosaic element inside DMXEPG  6 Headend generated DMXEPG video stream  7 Remote control  7a Arrow Up button  7b Arrow Down button  7c Arrow Left button  7d Arrow Rjght button  7e Zoom in button  7f Zoom out button  7g Select button  7h Info button  8 Display device  9 DMXEPG application screen (video and graphics) displayed on  10 Generic Mosaic Element (Video, Picture, Application, etc. see FIG. 5) that is “in focus”  11 Video feed scaled by the client device  12 Full screen video on a client device  13 Digital TV headend  14 Client video source (DVD, VCR, Camcorder, etc.)  15 Video input in the client device  16 DVR or PVR video decoder  17 Digital video decoder  18 Video tuner (digital I analog)  19 RF Splitter  20 RF Switch  21 Microprocessor  22 Mosaic Application Memory  23 RF input  24 Video Processor (Scalier)  25 Video Processor Combiner  26 Client device (e.g., STB/Media center, Digital television system module, video processing card in a PC, any portable wireless device such as a PDA or a cell phone, and so on)  27 Graphic component of the DMXEPG application  28 Interactive Application Canvas (Partial Screen)  29 DMXEPG Screen Title  30 Interactive Application Canvas (Full Screen)  31 Original DMXEPG video feed with aspect ratio 4x3  32 Original DMXEPG video feed with aspect ratio 16x9  33 Original DMXEPG video feed with aspect ratio MxN  34 ME with aspect ratio 4x3  35 ME with aspect ratio 16x9  36 ME with aspect ratio MxN  37 Background  38 DMXEPG video stream on display  39 Screen Title (also referred to as Screen name)  40 Current Time  41 Screen branding area  42 ME with the “IDLE focus”  43 The Show/program title bar  44 The Show/program title bar which is belongs to the focused mosaic  45 Show/program description  46 The sign to show ability to scroll description information  47 Screen title  48-50 (unused)  51 MECHE  52 MEC STB  53 MEC video loop 531 MEC audio loop  54 MEC image  55 MEC Application  56 MEC link to the Application  57 MEC link to the video program chosen by_a subscriber  58-59 (unused)  60 ME video (HE or STB)  61 ME picture  62 ME Application  63 ME Game (may include any combination of 51, 52, 53, 531, 54, 55,  64 ME Entry to the Games or Game Categories list  65 The Game title bar  66 The game title bar belongs to the focused Game Mosaic Element  67 ME Game in PAUSE state  68 ME Game Category (may include any combination of 51, 52, 53, 531, 54,  69 The Game Category screen title, which includes name of the game category and branding area.  70 ME Program/show/event (may include any combination of 51, 52, 53, 531,  71-79 (unused)  80 ME-entry to the Program Browser Mosaic for specific category (may include combination of 51, 52, 53, 531, 54)  81 ME Link to the application  82 ME link to the channel browser  83 ME link to the VOD programs browser  84 ME link to the PVR recorder program browser or to the Programs  85 Creping line  86 ME: headend generated video  87 ME: STB generated scaled video  88 Generic Mosaic Element in the focus in the DESCRIPTION (info)  89 Sign “PLAY”, which is indicates that user may play scaled/full screen video for this mosaic element (video loop is stored on STB HD or on the VOD server)  90 Non-broadcast program video-on-demand (VOD1  91 Non-broadcast program. Program is recorded by PVR. This program belongs to the selected program category (KIDS)  92 Infomercial title  93 ME: Infomercial  94 The Title of the program, which is belongs to the selected channel  95 The Title of the currently broadcasted program, which is belongs to the selected channel  96 Infomercial description  97 ME, which is in LOST focus, focus on the listings line  98 The title of the program in the focus  99 Program description :ME with the focus on it 100 The Title of the program for specific channel 101 The Title of the program for the focused :ME 102 Programs Grid 103 ME, which is an entry to the specific VOD category 104 Sign on the program title bar, which indicates that this program or similar programs are available on VOD system 105 EPG National Meta Data Server 106 EPG Local Meta Data Server 107 Local VOD Assets server 108 EPG data encapsulator

Following is a list of the reference numerals used in FIGS. 128-152 of the specification:

Numbe Description 1 Display device 2 The screen of the display device 3 Generic input for video and/or data  Composite AudioNideo Input  DVI 1.0 Digital HDTV input with HDCP Copy Protection  IEEE 1394 Digital Input with 5C copy protection  USB input  WIRELESS connection 4 Generic output for video and/or data:  Composite AudioNideo output  DVI 1.0 Digital HDTV output with HDCP Copy Protection  IEEE 1394 Digital output with 5C copy protection  USB output  WIRELESS connection 5 a client device (e.g., STB/Media center, Digital television system module, video processing card in a PC, any portable wireless device such as a PDA or a cell phone, and so on) 6 Video/Data connection for the wired implementation or video/ data flow for wireless connection 7 Remote control receiver device 8 Remote Control device 9 Interactive Application Canvas (Partial Screen) 10 Generic Mosaic Element in focus 11 Generic Mosaic Element 12 Full Screen Video 13 Program Title bar in focus 14 Program Title bar 15 Program Description 16 Channel Name and channel number indicator 17 The current time indicator 18 Button Display1 on the remote control 19 Button Display2 on the remote control 20 Interactive Application 21 The instance on DMXEPG application. 22 The HScreen instance 23 The HScreenDevice objects, instances of HGraphicsDevice class 24 The HScreenDevice objects, instances of HGraphicsDevice class 25 The HScreenDevice object, instance of HBackgroundDevice class 26 The screen area of the touch screen display device 27 The SCROLL button2 28 RF input/connection to the STB/Digital TV/Media center 29 Screen Title 30 Touch screen video device 31 CLEAR button 32 MOVE/REMOVE button 33 Arrow UP button (PAGE) 34 HOME button 35 Arrow DOWN (PAGE) button 36 INFO button 37 MUTE button 38 Microprocessor 39 Application memory 40 Tuner 41 Combiner of the Video Processor 42 RF Splitter 43 Tuner 44 Video decoder 45 Video Processor-video scale 46 DVR's Hard Drive 47 Cable, Satellite, IPTV, Terrestrial, or other digital TV Headend 48 Generic video processor 49 Touch screen display 50 Touch screen user input analyzer device 51 Graphics Processor

Aspects of a user interface in accordance with the present invention are explained in detail in the illustrative embodiment of the present invention disclosed below relating to electronic program guides for accessing broadcast content. It will be appreciated by one of ordinary skill that any type of content can be accessed using a user interface that incorporates the various elements disclosed hereinbelow.

FIG. 1 is a DMXEPG main page (an EPG screen) which, in accordance with the invention, displays multi-dimensional UI with dynamically assigned programs, iTV applications, video loops, icons, sound, pictures or any other content components to each ME taking into consideration service provider infrastructure and subscriber STB capabilities, business rules of service provider; business rules of a broadcaster; customer profile: geographic location, time of the day in the location, past personal preferences; channel metadata, program properties, and other program or subscriber relevant data. Subscriber can observer multiple video streams displayed on the screen and navigate the screen by changing the focus from any one displayed object to another displayed object. For the subscriber, a change in focus is indicated by visual or audio elements; for example, a beeping noise can be emitted, and visual cues such as blinking or highlighted outlines can be presented. Once in focus, ME enables audio for the corresponding program and gives the ability to the subscriber to trigger predefined response once the subscriber presses “Enter” on the remote control or STB.

Returning to FIG. 1, the DMXEPG main page can accommodate various numbers and sizes of displayed MEs. Program types that are assigned to the MEs can be added, removed, or relocated. The number of programs assigned to one ME and their rotation schedule. Changes to the DMXEPG main page can be triggered by time of the day, day of the week, week of the month, etc., special events, or other program or business criteria.

FIG. 1 shows the MEs as rectangle-shaped elements. However, it is possible to use other shapes for the MEs; e.g., circular MEs, elliptical, other polygonal shapes, combinations of various shaped MEs, and so on. However, for the specification, rectangle-shaped MEs will be discussed.

FIG. 2 is DMXEPG second or lower level screen which, in accordance with the invention, comprises dynamically assigned MEs. This means that each ME is assigned to a program that matches predefined content category while taking into consideration criteria such as program properties, business rules of the service provider, business rules of a broadcaster, customer profile, and preferences. Similarly to DMXEPG main screen, a subscriber can navigate the page, change focus from any to any screen elements and by pressing “Enter” on the remote control or STB, thus triggering predefined response. Such response includes display of a lower level DMXEPG screen; launch of iTV application; tuning to a channel; switch of audio channel; display of the text synchronized with audio track (closed captioned or subtitles); information for the current or the next program, or other predefined action.

FIG. 3 is multi-dimensional DMXEPG which, in accordance with the invention, enables a subscriber to view and select ongoing programs which are grouped, among other criteria, by content category, thus simplifying and expediting a task of identifying, viewing, comparing, and selecting one of desired programs. The system is capable of dynamically generating necessary number of DMXEPG levels to expose to subscribers some or all programs in a content category and satisfy business and technical objectives of broadcaster and service provider.

FIG. 4 is DMXEPG arranged in two levels DMXEPG screen of the first level displays content categories and matched video feeds. Subscribers by moving focus on the screen switch corresponding audio and by pressing “Enter” view larger number of video feeds that match content category in the DMXEPG second level screen. There, by pressing “Enter” on focused ME subscribers may leave DMXEPG and trigger STB to tune to a channel which is carrying currently displayed program.

FIG. 5 shows the composition of an ME. Each ME can include any number of the following components (each component being referred to as “media content”, or simply “content”): video program selected by the service provider; video channel chosen by a subscriber; video program chosen by a subscriber; video loop from broadcast stream, RAM, or hard drive; image; service provider or subscriber chosen iTV application as well as a link to iTV application. When applicable, an ME can include—channel number, program name, program status bar which displays program remaining time. When permitted by STB or service provider infrastructure (for example dual tuner STB or VOD system) subscriber can select channel assigned to the ME.

FIG. 6 shows a DMXEPG that was generated in the morning hours. The figure shows that the DMXEPG matches most common subscriber program preferences or service provider or broadcaster business objectives. On the other hand, FIG. 7 shows a DMXEPG generated in the evening hours which matches most common subscriber program preferences or service provider or broadcaster business objectives. As can be seen between FIGS. 6 and 7, the same level DMXEPG screen has different program composition in the morning and evening hours.

FIG. 8 shows a DMXEPG screen configured with peripheral MEs of different sizes. A subscriber moves the focus to a desired peripheral ME, presses “Select” or its equivalent button on the remote control or STB and a larger ME in the center of the display switches its video program and its audio to the program that matches the in-focus ME. This capability is possible on STBs with two or more tuners or on an infrastructure that supports a VOD System.

FIG. 9 is a DMXEPG screen similar to the screen in FIG. 8, but for a configuration where the STB has only one tuner and where there is no VOD system. In this configuration, the service provider assigns a program to the center ME. When the focus is changed from one peripheral ME to another, only the audio can be switched. The “Select” button allows subscriber to switch to the next DMXEPG level or to tune to desired program.

FIG. 10 is a DMXEPG screen comprising some MEs which display programs assigned by the service provider and other MEs which display channels or iTV applications selected by the subscriber. This functionality can be provided by an STB with multiple tuners or by a VOD system.

FIG. 11 is a DMXEPG screen which is generated with 16 peripheral MEs. The number of displayed MEs and their location was generated by the system which takes into account number of available programs that match selected content category, iTV applications and favorite channels selected by subscriber, TV screen size and resolution.

FIG. 12 is a DMXEPG screen which is generated with 9 peripheral MEs. The number of displayed MEs and their location was generated by the system which takes into account number of available programs that match selected content category, iTV applications and favorite channels selected by subscriber, TV screen size and resolution.

FIG. 13 is a DMXEPG screen which is generated with 5 peripheral MEs. The number of displayed MEs and their location was generated by the system which takes into account number of available programs that match selected content category, iTV applications and favorite channels selected by subscriber, TV screen size and resolution.

FIG. 14 is a DMXEPG screen with some MEs having association to more than one iTV application. Pointer to iTV applications can be assigned by the service provider and by subscriber. Multiple iTV applications assigned to an ME are displayed one at a time and can rotate at preset or default time interval. Subscriber can link any accessible iTV application to desired ME.

FIG. 15 is a DMXEPG screen showing the case when some MEs are set to display programs that match screen content criteria but fail subscriber parental rating limit. In such a case, subscriber has an option to enter PIN code to let a DMXEPG client application remove overlay and display programs that fail parental rating limit. If subscriber does not enter correct PIN code, programs that exceed parental rating limit will continue to be blocked. MEs with blocked programs can be overlaid with static on-screen display (OSD) image. The DMXEPG client application allows the user to navigate the DMXEPG hierarchy (e.g., as shown in FIG. 3) on the client device.

FIG. 16 is a DMXEPG screen showing the case when video or audio content that is removed from some MEs; for example as a result of “blackout” properties using head end's conditional access information (sports events can be blacked out). The Matrix SuperSplit server discussed below can dynamically replace a program marked as “blackout” by another program. Alternatively, Interactive Mosaic Client Application may use static OSD image or text to indicate cells with blackout properties or mark ME and disallow subscriber to set focus to that cell.

FIG. 17 is a DMXEPG screen showing the case when video or audio content is removed by the DMXEPG client application from the MEs because subscriber has not been authorized to access that channel. Service provider can choose to disallow subscriber to set “focus” to the ME for the duration of program on non-authorized channel, or corresponding audio.

FIG. 18 is a conventional DMXEPG with channels statically assigned to its MEs. The channels assigned to the DMXEPG are shown below, illustrated in a conventional programming guide format. Each ME represents a channel and not a program. ME association to the channel does not change for the extended period of time. Each DMXEPG screen displays semi-permanent group of channels.

FIG. 19 is an example of a schedule for a DMXEPG screen composition according to an aspect of the present invention with its MEs being assigned and reassigned to different channels to match service provider or broadcaster business rules. For explanatory purposes, the schedule of channels that are assigned to this DMXEPG screen are illustrated below the DMXEPG screen in conventional programming guide format.

FIG. 20 is an example of schedule for DMXEPG screen composition according to an aspect of the present invention with its MEs being assigned and reassigned to different channels with programs that match pre-defined content category for that ME. For explanatory purposes, the schedule of channels that are assigned to this DMXEPG screen are illustrated below the DMXEPG screen in conventional programming guide format.

FIG. 21 is an example of a DMXEPG that incorporates an iTV application in one ME. To prevent screen's burnout, iTV data is rotated, and it positioning is continuously changed. If a subscriber selects an ME to which an iTV application is assigned, additional information related to that iTV application can appear on a creeping line. Also, to prevent screen burnout information in the creeping line is rotated among application or disappears after timeout.

FIG. 22 is a DMXEPG page with one of its ME allocated to a group of iTV applications. iTV applications share an ME's space and rotate, appearing one at a time for pre-set time interval.

FIG. 23 is a head-end data flow through MTVSS. MTVSS gets raw EPG data from an EPG listings data provider (e.g. Tribune Media Services, TV Guide, or TV-Anytime). Available data delivery mechanisms include downloading from an FTP site, a Virtual Private Network, or a Data Broadcast Carousel. MTVSS imports raw EPG data into the MTVSS database. In most cases, EPG listings data provider supplies accurate data, which includes local programming, for 14 days.

MTVSS filters all programs by program category, subcategory, and genre. The figure depicts filtering by program subcategory “CARTOONS”. As a result of this data processing, system creates record set of all programs during the next 14 days across multiple channels (uniquely identified by source_id) and multiple head-ends (cable, satellite, or other) with the subcategory “CARTOONS”.

MTVSS will process data set made during step 233 and generate Interactive Mosaic channel insertion schedule for all channels that includes “CARTOONS” programs across multiple head-ends. MTVSS will generate schedule for short period (e.g. 1 day), because EPG schedule might dynamically change even inside 14 days windows.

On the local head-end MTVSS will apply (step 235) the local channel lineup, local business rules (e g channel priorities, non-video interactive mosaic element components), local conditional access rules (e.g. program rating, blackout), “last-minute” listings update data.

After step 235, MTVSS will generate real-time insertion schedule 236 for CARTOON programs which are broadcasted on this local head-end.

FIG. 24 shows logical components of the MTVSS. EPG listings data aggregator server 241 provides data to the Matrix Meta Data Server (MMDS). Daily, EPG data server refreshes data set and provides listings data for the next 14 days. The daily data set is the most accurate for the next day. There are two ways to retrieve the data: data “push” and data “pull”. For example Tribune Media Services (TMS) provides the “pull” method using their secure FTP site. To get data from TMS, MMDS uses a secure ftp connection to retrieve EPG listings data.

Matrix Remote Monitoring Terminal (MRMT) 242 is a web based interface that allows a system operator to access MTVSS. Once authenticated, the system operator accesses tasks and processes enabled by his security level. The system operator can perform a number of functions including: retrieval of Matrix Meta Data Server status, retrieval of Matrix Scheduler status, retrieval of Matrix SuperSplit status, and retrieval of logs, traces, and statistics for all MTVSS components. Matrix remote management portion of MRMT is a web based interface that allows the system operator to access MTVSS. Depending on granted permissions, the system operator can manage specific tasks and processes. The system operator can perform the following functions: start and stop any process on any MTVSS component, update configuration parameters for any MTVSS component.

Matrix Meta Data Server 243 comprises four components: Data Delivery Manager, Data Translation Manager, Data Cache Manager, and Matrix National resolution EPG database.

-   -   Data Delivery Manager (DDM) is designed to retrieve EPG data         from data aggregator server and store data in the local         database. Data Delivery Manager can be customized with         configuration file which includes data delivery schedule and         secure connection login parameters (e.g. secure ftp connection).         DDM can deliver data from multiple data sources (e.g. Tribune         Media Services, TV Guide, TV-Anytime).     -   Data Translation Manager (DTM) translates and converts original         EPG data using Data Translation Plug-ins (DTP). DTM may support         multiple DTPs for different EPG data providers (e.g. one for         TMS, one for TV Guide, etc.).     -   Data Cache Manager provides database interface for all MMDS         tasks.     -   Matrix National resolution EPG database stores original EPG data         (retrieved from EPG aggregation server) and data translated to         the Matrix Meta Data database. This database stores the channel         lineup for all service providers in a region.

Matrix Scheduler (MS) 244 receives and retrieves the following data:

-   -   Matrix Local resolution EPG database data (for specific         head-end, or set of head-ends) from Matrix Meta Data Server.     -   Additional conditional access data (e.g. program rating, program         blackout, etc.) fromlocal digital access controller (e.g. DAC         6000—Motorola head-end, DNCS—Scientific Atlanta head-end, DCAS         server).     -   “Last minute” program update data from EPG listings update         terminal 245     -   Enhanced data and Interactive Application insertion Terminal         (EIAT) 247. EIAT provides data for all mosaic element components         except “video program selected by service provider” e.g.:         -   Images         -   Video loops         -   Audio loops         -   Interactive applications         -   Still images         -   Texts         -   Interactive advertisement     -   Content Filtering Criteria received from either service provider         or third party.

Matrix scheduler comprises five major components: Local Headend Configuration Manager, STB Mosaic Gill Configuration Manager, DMXEPG Application Configuration Manager, Mosaic Meta Data generator, and Matrix Local resolution EPG database importer. Local Headend Configuration Manager is designed to apply local technical (e g channel lineup, MPEG2/DCII SI/PSIP tables configuration) and business rules (e g channel assignment priority) to the final program mosaic video stream and mosaic meta data. STB Mosaic Gill Configuration Manager allows a service provider to configure the graphical user interface and provides navigation for the DMXEPG Client application.

Mosaic meta data generator builds Interactive Mosaic descriptor, Interactive Mosaic Master Table, control and scheduling data for the Matrix SuperSplit, and additional mosaic meta data discussed in more detail below. Matrix Local resolution EPG database importer stores EPG listings data in the local database.

Real time or manual EPG listings update terminal 245 is a web based interface that allows system operator to update EPG listings data on local and national head-end before broadcasting.

Matrix Scheduler Configuration terminal 246 is a web based interface that allows system operator to configure program mosaic video stream, DMXEPG Client Application, insert local technical information, insert local business rules, and assign mosaic element components (FIG. 5) to the different mosaic elements.

Enhanced data and Interactive application Insertion terminal 247 is a web based interface that allows system operator to insert/assign mosaic element components (FIG. 5) to the Interactive mosaic. Matrix SuperSplit (MSS) 248 is a real time digital video processor which can:

-   -   Tune to the scheduled channel and program using Matrix Scheduler         control information     -   Compose mosaic video stream     -   Compose mosaic audio stream     -   Encapsulate Interactive Mosaic private data     -   Encapsulate modified Service Information tables

The MSS receives:

-   -   private interactive mosaic tables descriptors, mosaic element         components scheduling data (for example, which broadcasted video         program should be inserted in the final mosaic video stream)         from Matrix Scheduler     -   additional mosaic element components content (e.g., video/audio         loops) from Enhanced data and Interactive application Insertion         terminal 247     -   video feed which includes all channels sent by service provider

The MSS composes the fmal mosaic digital stream which comprises:

-   -   Mosaic video stream     -   Multiple audio streams, if applicable     -   DMXEPG Client Application, if applicable     -   Modified Service Information Data (E.g. PMT, SDT, CVT), if         applicable     -   Private Interactive Mosaic tables and descriptors     -   QAM/upconverter 249 (or its IPTV equivalent) modulates Matrix         SuperSplit output     -   RF combiner 2410 (or its IPTV equivalent) combines original         video feed with the Interactive Mosaic Virtual channel.

FIG. 25 is an algorithm to minimize or eliminate TV screen “burnout” caused by an interactive mosaic which may comprise a number of static graphics elements like “non-video” mosaic element components, mosaic screen background, and mosaic screen creeping line. To prevent TV screen “burnout”, system uses any combination of following rules and actions:

-   -   For “non-video” mosaic components (e.g. image, text,         application):         -   Dynamically change position of the mosaic element with the             “non-video” mosaic component. In this case we have to             regenerate mosaic video feed by MSS 248 and interactive             mosaic private tables/descriptors by MS 244.         -   Dynamically rotate multiple “non-video” mosaic components,             using transition effects (e.g. rotate weather application             and market stock application)         -   Dynamically change text/images positioning inside static             mosaic element     -   For Mosaic screen background:         -   try do not use gaps between video cells         -   Dynamically change mosaic screen background         -   Use transition effects during background image update     -   Use intelligent timeout for mosaic creeping line

FIG. 26 and FIG. 27 show ways to activate the DMXEPG Client application (DMXEPG-C). The DMXEPG-C can be downloaded to the STB RAM memory via any available transport mechanisms:

-   -   In band data carousel (e.g. DSMCC)     -   In band private tables or message (MPEG2—private section,         DCII—text message)     -   VBI data     -   Return path interactive channel     -   Out of band data carouse     -   Out of band private messaging

DMXEPG-C also can be stored in the available medium such as flash memory, hard drive, or another STB's persistent storage as STB's resident application. There are two scenarios to activate DMXEPG-C, depending on its location. FIG. 26 shows activation process when DMXEPG-C is downloaded to the box after subscriber tunes to the mosaic channel. FIG. 27 shows activation process when DMXEPG-C is stored in the STB persistence storage.

FIG. 28 shows a relation between standard MPEG2 transport tables and additional private Interactive Mosaic Tables and descriptors. Following is a discussion of the descriptors and tables showing an example of the syntax for Interactive Mosaic Descriptor and Interactive Mosaic Master Table.

Interactive Mosaic Private Tables and Descriptor MPEG 2 Private Section)

The interactive mosaic descriptor can be located in the following MPEG 2/ATSC SIIPSIP/DVB SI tables:

-   -   ATSC PSIP:     -   Virtual Channel Table (VCT)         -   Satellite_virtual_channel( )—descriptors loop         -   SMATV_virtual_channel( )—descriptors loop         -   Broadcast_virtual_channel(}—descriptors loop         -   Virtual_channel( )—descriptor loop     -   DVB SI         -   Service Description Table (SDT)-descriptors loop     -   MPEG2         -   Program Map Table (PMT)             -   TS_program_map_secition( )—program_info descriptor loop

A digital program which carries interactive mosaic can include the interactive mosaic descriptor inside its Program Map section in the program information descriptors loop.

TABLE 1 Syntax of private Interactive Mosaic Descriptor Syntax Bits Bytes Mnemonic Interactive mosaic descriptor( ){  Descriptor tag 8

uimsbf  Descriptor length 8 1 uimsbf  For G=O; j<N table ids; j++){   MatrixTV table id 8

uimsbf  } }

TABLE 2 MatrixTV table id values MatrixTV Matrix TV data stream OxDO Interactive Mosaic Master Table OxD1 Interactive Mosaic Resources Table OxD2 Interactive Mosaic Applications Table OxD3 Reserved OxD4 Reserved

TABLE 3 Syntax of Interactive Mosaic Master Table (IMMT) Syntax Bits Bytes Mnemonic Interactive mosaic master table( ){  Table id (see table 1) 8 1 Uimsbf  Section syntax indicator 1 bslbf  Reserved future use 1 Bslbf  Reserved 2 Bslbf  Section length 12 2 Uimsbf  Table id extension 16 2 Uimsbf  Reserved 2 Bslbf  Version number 5 Uimsbf  Current next indicator 1 2 Bslbf  Section number 8 1 Uimsbf  Last section number 8 1 Uimsbf  Interactive mosaic entry_level 1 Bslbf  Reserved 7 2  For(i=O:i<N:i++)f   mosaic element id 8

Uimsbf   mosaic element type 4 Uimsbf   Mosaic cell record length 12 2 Uimsbf   On left key_press mosaic element id 8 1 Uimsbf   On right key press mosaic element id 8 1 Uimsbf   On up key press mosaic element id 8 1 Uimsbf   On down key press mosaic element id 8 1 Uimsbf   Horizontal offset 14 Uimsbf   Horizontal size 14 Uimsbf   Vertical offset 14 Uimsbf   Vertical size 14 7 Uimsbf   Mosaic element components count 8 1 Uimsbf   ForG=O;j<mosaic component components    If( mosaic component components     Repeat fla 1 Bslbf     If(repeat flag =O){      Start time 32 4 Uimsbf     }     Duration in seconds 15 2 Uimsbf    }    mosaic element component * ((*))   }  }

TABLE 4 Syntax of mosaic element component descriptor Syntax Bits Bytes Mnemonic mosaic element component  Descriptor tal!; 8 1 uimsbf  If(descriptor tag == 0x01){   Video steam locatorO *   CA descriptorO *  }  If(descriptor tag == Ox02){   Audio stream locatorO *   CA descriptorO *  }  If(descriptor tag= Ox03){   Video loop_ locatorO *    CA descriptorO *  }  If(descriptor tag= 0x04)_{   Audio loop_ locatorO *    CA descriptorO *  }  If(descriptor tag == Ox05){   Still picture locatorO *  }  If(descriptor tag= Ox06){   Ima ?;e locatorO *  J  If(descriptor tag= Ox07){   Application locatorO *  }  If(descriptor tag= Ox08){   Private data locatorO *  } }

The resource locators' descriptors and Interactive Mosaic Resources Table and Interactive Mosaic Application Table are protocol/transport depended (may be one for DVB SI, one for ATSC PSIP, one for OCAP, one for DSMCC).

FIG. 29 shows local and national MTVSS configurations. MTVSS have three configuration options: National-1 (MTVSS-N1), National-2 (MTVSS-N2), and Local (MTVSS-L).

a) MTVSS-Nl 291 generates local real-time program insertion schedule in the national network operation centre (NNOC) and delivers the data to the local Matrix SuperSplit server(s), which generates DMXEPG screens.

b) MTVSS-Nl 292: local video stream generates by the Matrix SuperSplit server(s) located in NNOC. This option has better scalability because it does not require any changes on a local head-end where DMXEPG screens are delivers over existing digital TV infrastructure.

c) MTVSS-L 293 generates local real-time program insertion schedule using local Matrix Scheduler Server(s) and delivers the data to the local Matrix SuperSplit server(s), which generates DMXEPG screens.

FIG. 29a shows MTVSS configurations for DMXEPG screen implementation on client device. MTVSS implementation in 294 comprises a Matrix Scheduler as part of service provider backend. That configuration allows service provider to control ME mosaic element presentation criteria.

The MTVSS implementation in 295 consists of Matrix Scheduler as part of subscriber device. That configuration allows subscriber or third party to control ME mosaic element presentation criteria. The criteria service provider can be any third party that provides mosaic element presentation criteria that is used by the Matrix Scheduler. The criteria service provider can be the manufacturer of the client subscriber device. The criteria service provider can be the subscriber. In the general case, the mosaic element presentation criteria may comprise criteria from any combination of third party providers, the manufacturer, and/or the subscriber.

Mosaic element presentation criteria can be delivered using any suitable delivery medium including an Internet connection, a dial-up service, over the airwaves, satellite link, cable link, and so on. The subscriber can be provided with criteria on a CD that can be installed in the subscriber device.

FIG. 30 shows remote control which, in accordance with the invention, incorporates rotating element which can be used by subscriber to simplify navigation of DMXEPG or any iTV application. Subscriber can manipulate the rotating element by rotating it up or down, as well as pushing it toward or away from himself, or depressing it into the remote control, or finally releasing it after it has been depressed into the remote control. STB maps movements of the rotating element with the DMXEPG or iTV application functions.

FIG. 31 shows how to “virtually” increase the size of the video or visual program displayed in an ME since the ME size can be too small to show the entire video in a discernable manner. To solve the problem, the video or visual program can be virtually expanded by clipping less critical area around the center of the video and stretching the remaining video to fill in a ME. The figure shows clipping to extract a central portion of the video. The user can clip other regions of the video to extract portions of the video other than the central portion.

Numerous combinations of aspect ratios of video sources and aspect ratios of the display area are possible. Typical combinations include:

-   -   a 16×9 video source converted to a 4×3 ME     -   a 4×3 video source converted to a 16×9 ME     -   a 16×9 or a 4×3 video source converted to an ME of non standard         aspect ratio.

To virtually increase the size of the video, it is necessary to clip a percentage of the original video feed (which is usually lost because of TV overscan) and scale it to the size and aspect ratio of the target ME. As shown in FIG. 31, the video is clipped to produce a clipped video source. The clipped video source is then expanded (scaled up, sized up, etc.) and incorporated into the target ME. The figure shows the original video has a 4×3 aspect ratio and the target ME has a 4×3 aspect ratio. The clipped video source therefore has a 4×3 video source.

FIG. 32 shows clipping for an original video source having a 4×3 aspect ratio that is targeted for an ME that has a 16×9 aspect ratio. The clipping is performed with a rectangle having an aspect ratio of 16×9 s the video can be scaled up to fit the target ME without distorting the original video.

To further illustrate this clipping aspect of the present invention, FIG. 33 shows clipping for a 4×3 original video source (i.e., its aspect ratio is 4×3) to fit into a target ME having a non-standard aspect ratio. FIG. 34 clipping for a 16×9 original video source to fit a 16×9 ME (i.e., its aspect ratio is 16×9). FIG. 35 clipping for a 16×9 original video source to fit a 4×3 ME. FIG. 36 shows clipping for a 16×9 to fit a non-standard ME.

FIGS. 37-44 show that a subscriber can zoom in on an ME that is in focus. FIG. 37 shows how a subscriber can expand the size of a 4×3 ME (i.e., its aspect ratio is 4×3) that is in focus including the video displayed in it to a larger (zoomed in) 4×3 ME. This operation is done by a second tuner connected directly or indirectly to the display, and is performed when the user activates a control to perform zooming. For example, the figures shows “zoom in” button on a remote control that can be used to activate zooming in. The original aspect ratio of ME may or may not be preserved in the expanded ME. For example, FIG. 37 illustrates an example where the aspect ratio is preserved when zooming is performed on the ME in focus.

Other aspect ratios can be accommodated. FIG. 38 shows zooming in of a 4×3 original ME to an expanded ME having a 16×9 aspect ratio. FIG. 39 shows zooming in of a 16×9 original ME to a 16×9 enlarged ME. FIG. 40 shows zooming in of a 16×9 original ME to a 4×3 enlarged ME. FIG. 41 shows zooming in of a 16×9 original ME to a non-standard zoomed-in ME (i.e., the ME has a non-standard aspect ratio). FIG. 42 shows zooming in of a 4×3 original ME to a non-standard zoomed-in ME (i.e., the ME has a non-standard aspect ratio). FIG. 43 illustrates a configuration where the in-focus ME has a non-standard aspect ratio where zooming results in a 4×3 expanded ME, while FIG. 44 shows an 16×9 expanded ME.

FIG. 45 illustrates that the subscriber can further expand the size of the zoomed-in ME to a full-screen video. This action can be activated by an additional press of the zoom-in button on the remote control. The full-screen video may take on the aspect ratio of the display, or take on its original aspect ratio as broadcast.

FIGS. 46 and 47 show that the subscriber can reverse the series of zoom-ids by zooming out. This action is activated by pressing the zoom-out button on the remote control. FIG. 46 shows that a full-screen display can be reduces to its previous state (size) which is the expanded ME. A further activation of the zoom-out button will cause the expanded ME to return to its original size, as illustrated in FIG. 47.

FIG. 48 shows the use of the SELECT button to expand the size of ME and bring it back to it original state. By repeated activation of the SELECT button, the in-focus ME can cycle from original size, then to expanded size, then to full-screen size as shown in the figure. Further activation of the SELECT button may restore the video in reverse order. Thus, the full-screen size is reduced to the expanded ME, then to the original-sized ME with another press of the SELECT button.

FIG. 49 shows an alternative embodiment of FIG. 48. When the video is displayed in full-screen mode, the press of the SELECT button returns the video to the original-sized ME. This may be preferable over the sequence shown in FIG. 48 in that the user who is viewing the full-screen video may simply want to return to the display of MEs without having to traverse through the intermediate step of the expanded ME.

FIG. 50 shows that the subscriber can change location of an expanded ME on the screen by using the arrow keys on the remote control (or by a voice command in the case of a voice-based control device). The expanded ME can move about the screen in pixel-sized increments, or on other increments of distance. Keeping an arrow key depressed can cause the expanded ME to accelerate from a small increments in movement to larger increments improvement. These and other motion dynamics can be provided.

FIG. 51 shows that DMXEPG can comprise MEs which are generated on the headend MEs which are generated on the subscriber (client) side. The notation “HE” refers to those MEs that were generated at the headend, while the notation STB indicates MEs generated on the subscriber side; e.g., by the subscriber's STB.

FIG. 52 shows major system elements and their connections to enable subscribers to display DMXEPG with some of the MEs selected by subscriber from an additional content any source available to subscriber. The components of the client device according to the present invention are enclosed by the phantom lines. The figure shows that the subscriber subscribes on one content provider; e.g., a cable company, a satellite dish, and so on. Additional content sources, identified in the figure as client video sources 1 and 2, can be connected to the client device.

FIG. 52a shows major system elements which allow entire DMXEPG screen to be created by subscriber device with multi-tuner capability. As an example, when input signal is transmitted over RF, subscriber device can include input module that splits incoming signal to feed subscriber device tuners.

FIG. 53 is similar to FIG. 52, but for a configuration where the subscriber has access to more than one content provider. The configuration of FIG. 53 shows a switch for switching among the multiple content providers.

FIG. 54 shows major system elements and their connections to enable subscribers to display expanded ME in the DMXEPG using the same content source.

FIG. 55 shows major system elements and their connections to enable subscribers to display expanded ME in the DMXEPG using more than one content source.

FIGS. 56-58 are tables that illustrate combinations of scaling and displaying video for different combinations of aspect ratios among the DMXEPG application screen 9 (FIG. 37, for example), an in-focus ME, the original video stream, and the display. The DMXEPG application screen contains an array of MEs.

FIG. 59 shows a process of scaling source video to an ME when source and destination aspect ratios are the same or are not the same.

FIG. 60 shows examples of different arrangements of MEs in a DMXEPG application screen (e.g., element 9 in FIG. 37), for different combinations of aspect ratios of the DMXEPG application screen and the MEs. Thus, for example, a 4×3 DMXEPG application screen (i.e., having an aspect ratio of 4×3) can accommodate a 3×3 array of MEs having an aspect ratio of 4×3. A 16×9 DJ\1XEPG application screen can fit a 4×3 array of MEs having an aspect ratio of 4×3. More generally, an M×N DMXEPG application screen can fit an array of 4×3 MEs leaving some unused space which can be filled with a suitable background pattern. Table 4 in FIG. 60 lists examples of various combinations of DMXEPG application screen and ME arrangement. FIGS. 61-63 illustrate examples where MEs of different aspect ratios can be used to populate a DMXEPG application screen.

FIG. 64 illustrates an example of a Pay Per View portal created with MEs. A screen name area identifies that this screen is a “pay per view” portal. A screen branding area allows for a sponsor's logo; e.g., STARCOM.

FIGS. 64 and 65 illustrate that the title bar corresponding to the in-focus ME is highlighted in addition to the in-focus ME. In addition, the titles for the row of MEs that includes the in-focus ME are displayed in an area below the array of MEs. Thus, in FIG. 65, ME3 is in focus and the titles for ME1 to ME4 are shown. In FIG. 66, the in-focus ME is ME7, and so the titles for ME5 to ME8 are shown. Further examples are shown in FIGS. 67-69. FIG. 69 shows that an in-focus ME can be purchased for viewing by pressing the SELECT button on the remote control.

FIG. 66 shows Pay Per View portal created with MEs.

FIG. 67 shows Pay Per View portal created with MEs.

FIG. 68 shows Pay Per View portal created with MEs.

FIG. 69 shows Pay Per View portal created with MEs.

FIG. 70 shows example of UI and navigation in the DMXEPG in accordance with the present invention. The example is a DMXEPG for the specific content category of GAMES for content category of KIDS. The main screen defaults to an ME that is selected to be the default ME. In this case the default ME is MEG.

FIG. 71 shows that the ME5 is in focus. The main screen is updated with the video currently associated with ME5 when the user presses the SELECT button on the remote control.

FIG. 72 shows the display of additional information for the in-focus ME when the user requests additional information. The video is scaled to allow for room to display the additional information.

FIG. 73 shows that the display including scaled video and additional information will change when the user changes the focus from one ME to another ME. Here, ME5 was in focus as shown in FIG. 72, and in FIG. 73 ME2 becomes focused.

FIGS. 74 and 75 show a sequence when the focus is changed to the GAMES ME. As can be seen in FIG. 75 the main screen is replaced with a set of MEs for different games that can be accessed.

FIG. 76 shows that the user can navigate from a game ME to a non-game ME. For example, FIG. 75 shows that the game ME for Game 1 was in focus. In FIG. 76, the user can navigate to ME3 by using the arrows keys on the remote.

FIG. 77 shows that the main screen can be once again replaced with the scaled video when the SELECT button is pressed for the in-focus ME.

FIG. 78 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 79 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 80 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 81 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 82 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 83 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 84 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 85 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 86 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 87 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 88 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 89 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 90 shows example of UI and navigation of DMXEPG created for specific content category (Kids)

FIG. 91a shows example of UI and navigation of DMXEPG portal

FIG. 91b, 91c, 91d show DMXEPG UI navigation within specific content category

FIG. 92a, 92b, 92c, 92d show DMXEPG UI navigation and program information following changes in focus of IVIEs.

FIG. 93 shows UI and navigation of DMXEPG of future programs

FIG. 94 shows option of enlarging selected ME to larger portion of the screen and the full screen

FIG. 95, 96 shows UI and navigation of DMXEPG in program information display mode when some ME display trailers one ME is in focus and optionally continue to play trailers when focus moves to another ME.

FIG. 97 shows UI and navigation of DMXEPG in program information display mode.

FIG. 98-109 show UI and navigation of DMXEPG in channel browsing mode

FIG. 110-112 show zoom in and zoom out of ME in DMXEPG in show browsing mode

FIG. 113-117 show UI and navigation of DMXEPG in channel browsing mode

FIG. 118 shows DMXEPG ability to enter PVR content browsing mode

FIG. 119 shows how VOD portal is built with ME

FIG. 120-121 shows how availability of the same or similar content on VOD system can be indicated and DMXEPG MW as well as grid based EPG

FIG. 122 shows a diagram describing process of encapsulation of VOD program metadata into DMXEPG metadata

FIG. 123 shows a system that merges metadata for programs supplied by multiple digital TV service providers

FIG. 124 shows a system that allows subscribers to select channel auto merge or perform manual channel merge for channels delivered over multiple networks

FIG. 125, 126 show UI subscriber can access to perform manual merge of channels delivered over multiple networks

FIG. 127 shows how subscriber can tune to the desired channel using channel name (for example CNN, HBO, etc) or its mnemonic representation using telephone keypad—letter association.

FIG. 128 shows set top box with the application that can utilize more than one display for video output, graphics output, or their combination.

FIG. 129 shows digital TV set with the application that can utilize more than one display for video output, graphics output, or their combination.

FIG. 130 shows set top box that runs two applications each of which is using separate display for video output, graphics output, or their combination.

FIG. 131 shows digital TV set that runs two applications each of which is using separate display for video output, graphics output, or their combination.

FIG. 132 shows set top box that runs two applications each of which is using a portion of multiple displays for video output, graphics output, or their combination.

FIG. 133 shows digital TV set that runs two applications each of which is using a portion of multiple displays for video output, graphics output, or their combination.

FIG. 134 shows example of multi screen application for set top box where the Mosaic portion is directed by D:MXEPG application to the Video/Data Output 1 (Secondary Display) and the Full screen Video stream is directed by D:MXEPG application to the Video/Data Output 2 (Primary Display)

FIG. 135 shows example of multi screen application for digital TV set where the Mosaic portion is directed by D:MXEPG application to the Video/Data Output 1 (Secondary Display) and the Full screen Video stream is directed by D:MXEPG application to the Video/Data Output 2 (Primary Display)

FIG. 136 shows example of multi screen application for set top box where the EPG is directed to the Video/Data Output 1 (Secondary Display) and the Full screen Video stream is directed by application to the Video/Data Output 2 (Primary Display)

FIG. 137 shows example of multi screen application for set top box where the EPG is directed to the Video/Data Output 1 (Secondary Display) and the Full screen video clip for future program is directed by application to the Video/Data Output 2 (Primary Display)

FIG. 138 shows logical structure of DMXEPG for multiple displays where 21: The instance on DMXEPG application.

22 a: The HScreen instance (HScreen class which is defined by HAVi I OCAP IMHP) represents a physical primary display device.

22 b: The HScreen instance (HScreen class which is defined by HAVi I OCAP I MHP) represents a physical secondary display device.

23 a,23 b,23 c: The HScreenDevice objects, instances of HGraphicsDevice class (HGraphicsDevice class which is defined by HAVi I OCAP I MHP), represents the graphics layers that belong to the primary display device.

23 d,23 e,23 f: The HScreenDevice objects, instances of HGraphicsDevice Class (HGraphicsDevice class which is defined by HAVi I OCAP I MHP), represents the graphics layers that belong to the secondary display device.

24 a,24 b,24 c: The HScreenDevice objects, instances of HVideoDevice class (HVideoDevice class which is defined by HAVi I OCAP I MHP), represents the video layers that belong to the primary display device.

24 d,24 e,24 f: The HScreenDevice objects, instances of HVideoDevice class (HVideoDevice class which is defined by HAVi I OCAP I MHP), represents the video layers that belong to the secondary display device.

25 a: The HScreenDevice object, instance of HBackgroundDevice class (HBackgroundDevice class which is defined by HAVi I OCAP I MHP), represents the background layer that belongs to the primary display device.

25 b: The HScreenDevice object, instance of HBackgroundDevice class (HBackgroundDevice class which is defined by HAVi I OCAP I MHP), represents the background layer that belongs to the secondary display device.

FIG. 139 also shows logical structures, but for any application including DMXEPG.

FIG. 140-148 shows system diagram and UI for multi-display DMXEPG application implemented with touch sensitive display.

FIG. 149 shows remote control that allows subscribers to change focus from one display to another for multi-display applications.

FIG. 150 shows system diagram of a digital TV set or set top box which enable applications with multi-display functionality.

FIG. 151 shows system diagram for touch screen display that can be used with systems that support multi-display DMXEPG.

FIG. 152 shows system diagram of a digital TV set or set top box utilizing touch screen display for multi-display DMXEPG or other multi-screen applications.

FIG. 153 shows DMXEPG screen displayed in three dimensions either on display with two or three dimensional rendering capabilities.

FIG. 154 shows DMXEPG screen displayed in three dimensions either on display with two or three dimensional rendering capabilities. DMXEPG can be shown using different perspectives.

Operation

A subscriber, in accordance with the invention, accesses DMXEPG main page which displays content categories grouped by genre, language, broadcaster name, geographical location of the broadcaster, or other pre-set criteria. For example, content can be grouped by genre in “News”, “Movies”, “Sitcoms”, “Cartoons”, “Sports”, and “Favorite” categories FIG. 7. Subscriber can observe displayed content and switch to the corresponding audio track by navigating to the desired mosaic element using remote control's available buttons—in most cases “UP”, “DOWN”, “LEFT”, “RIGHT” or, proposed in the invention, optional rotating element FIG. 30 which allows to move focus from one mosaic element to the next in one continuous motion in accordance with the direction of the turn which moves the focus with every pre-defined degree of the rotation.

If subscriber wants to observe more choices in a particular content category, he can press “ENTER” button on the remote control or depress optional rotating element 301 which brings subscriber to another DMXEPG page FIG. 2 that displays mosaic of real time video feeds for the corresponding content category. Similarly to the previous screen, subscriber can switch audio tracks, or select desired program to view it in the “full screen” mode. Also, service providers might choose to display DMXEPG page with incongruent mosaic elements, allocating more space for one or more ME, while still allowing subscribers to switch audio tracks by navigating to the corresponding ME. Furthermore, service providers might choose to create DMXEPG pages that reflect user content preferences associated with the different time of the day, day of the week, age, sex, income, geographical location, and other subscriber demographic data and use conditional access system to match user profile to specific DMXEPG pages. FIG. 6 shows DMXEPG page generated for the morning hours to match viewing preferences subscribers in selected ZIP codes.

With the set-top box with 2 or more tuners, in accordance with the invention, subscriber, after accessing mosaic DMXEPG landing page, selecting content category, and viewing corresponding DMXEPG page is given the option of selecting any video stream, including video from other sources like DVD player, on one ME while observing DMXEPG elements on the rest of the screen FIG. 10. Similarly to other DMXEPG pages, subscriber can switch corresponding audio track by navigating to the corresponding mosaic element. Subscriber can also move position of mosaic element displaying subscriber selected video stream including video from other sources (e.g. VCR, DVD player, video camera, digital camera, etc.) to uncover hidden DMXEPG elements. This setup can be applied to any predefined content category or DMXEPG page.

With the set-top box with 2 or more tuners, in accordance with the invention, subscriber, after accessing DMXEPG screen, can optionally select size of ME in focus by pressing “ENTER” or any other button assigned to that function. In case of subscriber device capable of three dimensional rendering, subscriber can also choose Z coordinate of ME.

Service Provider, in accordance with the invention, can dynamically change rules responsible for dynamic association of channels with the mosaic DMXEPG elements. For the main landing page, service providers can choose to change displayed content categories, advertisement, or other visual or audio data depending on the time of the day, day of the week, customer demographic data, capabilities of customer premises equipment, and capabilities of the head-end equipment, as well as its business needs. 

What is claimed is:
 1. A method of controlling video display of a user interface (UI) comprising a plurality of displayed non-overlapping mosaic elements (MEs), each of the plurality of non-overlapping MEs having an ME area defined by a length and a width and each having a different corresponding location on the UI, the method comprising: providing, for display in one of the plurality of non-overlapping MEs comprising a first aspect ratio, video from an original video source comprising a second aspect ratio; generating a clipped video source portion comprising the first aspect ratio by removing a region of the original video source adjacent to the clipped video source portion; scaling the clipped video source portion by expanding the clipped video source portion to have an area that is the same as the ME area while maintaining the first aspect ratio; and inserting the scaled clipped video source portion into the one ME for display, wherein the scaled clipped video source portion is displayed in the one ME on the UI.
 2. The method of claim 1, wherein the first aspect ratio is different than the second aspect ratio.
 3. The method of claim 1, wherein the first aspect ratio and the second aspect ratio are the same.
 4. The method of claim 1, wherein the clipped video source portion is a central portion of the original video source.
 5. The method of claim 1, wherein the region of the original video source adjacent to the clipped video source portion is less critical than the clipped video source portion.
 6. A video processing device for controlling video display of a user interface (UI) comprising a plurality of non-overlapping mosaic elements (MEs), each of the plurality of non-overlapping MEs having an ME area defined by a length and a width and each having a different corresponding location on the UI, the processing device comprising a video processor configured to: provide, for display in one of the plurality of non-overlapping MEs comprising a first aspect ratio, video from an original video source comprising a second aspect ratio; generate a clipped video source portion comprising the first aspect ratio by removing a region of the original video source adjacent to the clipped video source portion; scale the clipped video source portion by expanding the clipped video source portion to have an area that is the same as the ME area while maintaining the first aspect ratio; and insert the scaled clipped video source portion into the one ME for display, wherein the scaled clipped video source portion is displayed in the one ME on the UI.
 7. The video processing device of claim 6, wherein the first aspect ratio is different than the second aspect ratio.
 8. The video processing device of claim 6, wherein the first aspect ratio and the second aspect ratio are the same.
 9. The video processing device of claim 6, wherein the clipped video source portion is a central portion of the original video source.
 10. The video processing device of claim 6, wherein the region of the original video source adjacent to the clipped video source portion is less critical than the clipped video source portion. 